Analyse - logisch gegevensmodel
Home

Analyse - logisch gegevensmodel

Analyse - logisch gegevensmodel

Design PhaseData-modellering is een taak die verwarrend kan zijn door het gebruik van verschillende modellen van modellering. Drie soorten data-modellering zijn zeer populair:

  1. conceptuele modellen
  2. logische modellen
  3. fysieke modellen

Maar door veel overlappende principes is het gebruik deze modellen erg verward. Bij de uiteenzetting van het logisch model wordt geprobeerd om de verschillen tussen conceptuele en logische modellen op eenvoudige uit te leggen.

Video

Conceptuele gegevensmodel

In de vorige les hebben we gezien wat concepetuele gegevensmodellering (Analyse Les 3 Conceptueel gegevensmodel) is. Entiteit, attrubuut en-verwantschap vormen de basis van het conceptueel datamodel. Dit model is ontwikkeld door Peter Chen in 1976. Het wordt heden ten dage echter zelden gebruikt in zijn pure vorm.

In een conceptueel datamodel zijn er ook gegevensitems behalve entiteiten en relaties. Deze data items zijn gekoppeld aan entiteiten als attributen. Er wordt weinig 'informatie' in verwerkt over de attributen. Hoewel het conceptuele model dus relatief eenvoudig is, en heeft als bedoeling decomplexiteit van hedendaagse bedrijven weer te geven. Om een overzicht te krijgen van de entiteiten en hun verwantschappen in de context van vandaag is een zeer hoog niveau van abstractie nodig in conceptuele datamodellering.

In het eerste voorbeeld is de abstractie zeer hoog en kan dus goed dienst doen in de gesprekken met de klant:

Identity ERM
Identity ERM

In het tweede voorbeeld is de abstractie nog zeer hoog. Alleen de namen van de attributen worden vermeld. Maar het gebruik van kraaienpoten ligt al moelijker:

VOS - ERD Log
VOS - ERD Log

In het derde voorbeeld wordt al een deel van het logisch gegevensmodel in het conceptueel model opgenomen. Het gegevenstype van de attributen en de FK's, PK's en AK's staan er bij vermeld:

Identity ERD
Identity ERD

Dit maakt het uiteindelijk alleen maar verwarrend. Mijn voorkeur gaat uit naar een ERM voor het conceptueel gegevensmodel en een zeer technisch logisch gegevensmodel zoals hieronder beschreven.

Logisch gegevensmodel

Wanneer bedrijfsgegevens moeten geïmplementeerd worden in een database heeft men een logisch data-model nodig. Het logisch model lijkt dicht bij het fysieke model (de eigenlijke database) liggen. Maar het nog steeds overeenkomsten met conceptueel model. Het logisch model heeft o.a. primaire, vreemde en alternatieve sleutels, maar specificeert nog niet op welk database-platform het geïmplementeerd gaat worden.

Wat is het verschil tussen conceptueel en logisch data model?

  1. Zowel conceptuele als logische data-modellen zijn belangrijk voor data-modellering
  2. Hoewel het conceptuele datamodel de communicatie over de beschrijving van de gegevensbehoefte met de klant makkelijk maakt, maakt het logisch datamodel het mogelijk om de IT-mensen erbij te betrekken zonder dat ze moeten rekening houden met de beperkingen/mogelijkheden van een specifiek databaseplatform.

Het logisch datamodel beschrijft de structuur van en de referenties tussen de logische gegevensobjecten, die meer gelijken op tabellen dan op entiteiten. We gebruiken daarvoor een Data Structure Diagram. Alle uitleg over de DSD, dat we in deze lessen gaan gebruiken, vind je op Data Structure Diagram voor An Orm Apart.

Dat is een voorbeeld van een ander extreem waarbij het overzicht inboet ten voordele van de detailbeschrijving van de entiteiten.

Als voorbeeld geef ik hier een aanzet voor het logisch model van Identity.

Myaa

My Authoring App

ModernWays

Person

Persoon

FirstName, LastName
Column Name Display Text Searchable Default Value Unique Type Length Variable International Required Reference Table Reference Column Display Column List HTML element HTML type attribute Reserved HTML pattern attribute HTML title attribute HTML placeholder attribute
FirstName Voornaam NO NO NO CHAR 50 YES YES YES NA NA NA YES INPUT TEXT NA NA NA
LastName Achternaam SELECTBY NO NO CHAR 120 YES YES YES NA NA NA YES INPUT TEXT NA NA NA
Address Adres NO NO NO CHAR 255 YES YES NO NA NA NA NO INPUT TEXT NA NA NA
PostalCode Postcode NO NO NO CHAR 20 YES NO NO NA NA NA NO INPUT TEXT NA NA NA
City Stad NO NO NO CHAR 80 YES YES NO NA NA NA NO INPUT TEXT NA NA NA
Country Land NO NO NO CHAR 80 YES YES NO NA NA NA NO INPUT TEXT NA NA NA
Email E-mail SELECTBY NO NO CHAR 255 YES YES NO NA NA NA NO INPUT EMAIL NA NA jan.jannsens@mail.me
Gender Geslacht NO NO NO CHAR 1 NO NO NO NA Id NA NO INPUT TEXT NA NA NA
Phone1 Telefoon 1 NO NO NO CHAR 25 YES NA NO NA NA NA NO INPUT TEXT NA NA NA
Phone2 Telefoon 2 NO NO NO CHAR 25 YES NA NO NA NA NA NO INPUT TEXT NA NA NA
Id NA NA PK YES Integer NA NA NA Yes NA NA NA YES INPUT HIDDEN NA NA NA

User

Gebruiker

Name
Column Name Display Text Searchable Default Value Unique Type Length Variable International Required Reference Table Reference Column Display Column List HTML element HTML type attribute Reserved HTML pattern attribute HTML title attribute HTML placeholder attribute
Name Naam SELECTBY NO YES CHAR 50 YES YES YES NA NA NA YES INPUT TEXT NA NA NA
HashedPassword Hash NA NO NO CHAR 255 YES YES NO NA NA NA YES INPUT TEXT NA NA NA
PersonId Persoon Id NA NO NO Integer NA NA NA NO Person Id FirstName, LastName NO SELECT NA NA NA NA
Role Rol SELECTX NO NO Char 30 YES YES YES NA NA NA YES SELECT NA NA NA NA
Id NA NA PK YES Integer NA NA NA Yes NA NA NA YES INPUT HIDDEN NA NA NA

Opdracht

  1. Maak een logisch gegevensmodel voor de Organisation-gegegevens van VOS op basis van het ERM en ERD.
  2. Maak een logisch gegevensmodel voor de Procedures van VOS op basis van het ERM en ERD.
  3. Kopiëer de tabel hierboven, plak die in het Word document waarin je ERD's en ERM's staan en gebruik die als basis voor de opdracht.

JI
2020-10-28 19:45:51